package br.com.absolutech.study.chapter7.pag337;

class Animal {
}
class Dog extends Animal {
}
class Cat extends Animal {
}

public class GenTest {

	public void foo() {
		Cat[] cats = { new Cat(), new Cat() };
		addAnimal(cats);
	}

	public void addAnimal(Animal[] animals) {
		animals[0] = new Dog(); //Oh nao ! Acabamos de colocar um Dog em um array Cat !
		/* O compilador pensa que eh perfeitamente valido */
	}
}
